Content hosting and advertising systems and methods

ABSTRACT

In an exemplary system, a data store includes at least a subset of media content, media content attribute data associated with the media content, user profile data associated with at least one consumer having access to the media content, advertising content, and content matching data associated with the advertising content. An access module is communicatively coupled to an access device and configured to receive a request sent by the access device, the request being for access to a media content instance included in the media content. A matching module is configured to match at least one advertising content instance included in the advertising content to the media content instance based on the media content attribute data, user profile data, and content matching data. The access module is configured to provide the matched advertising content instance to the access device for user presentation.

BACKGROUND INFORMATION

Advances in the digital realm of consumer electronics and communicationshave made media content widely accessible to consumers. Consumers canchoose from an assortment of media content provided on various outletssuch as the Internet or subscriber television systems.

With an abundance of available media content and media content outlets,advertisers have numerous options for disseminating theiradvertisements. In general, advertisers seek to associate theiradvertisements with media content and media content outlets that willmaximize the effectiveness of and return on investment generated by theadvertisements.

One determining factor for the effectiveness of an advertisementcampaign is the ability to target the campaign to an interested audience(i.e., a target audience). While conventional target advertisingtechniques can improve the effectiveness of an advertisement, thereremains room for improvement. In the context of traditional broadcasttelevision systems, for example, advertisements may be selected andinserted into commercial segments of programs based on geographiclocations. For instance, when a particular television program isbroadcast to a wide audience (e.g., a national audience), differentlocal advertisements may be inserted for different geographic regions.However, such targeting is very broad and does not ensure that aparticular viewer will experience advertisements that are interesting orrelevant.

By way of another example, some conventional advertising techniquesselectively identify and include advertisements in a presentation of aweb page. The advertisements may be selected based on keywords that aredetermined to be related to the content of the web page. In theory, thematching of an advertisement keyword to the content of the web pageprovides a form of targeted advertising. However, the targeting is verybroad and does not account for individual preferences or demographics.Selecting an advertisement based solely on the content of the web pagerequires that a content-based assumption be made about the demographicsof the person viewing the web page. In some cases, the assumption may bewrong, and the person may be presented with advertisements that are oflittle or no interest.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate various embodiments and are a partof the specification. The illustrated embodiments are merely examplesand do not limit the scope of the disclosure. Throughout the drawings,identical reference numbers designate identical or similar elements.

FIG. 1 illustrates an example of a content hosting and advertisingsystem.

FIG. 2 is an illustration of an exemplary configuration of the contenthosting and advertising system of FIG. 1.

FIG. 3 is an illustration of an exemplary graphical user interface thatmay be presented to a content producer.

FIG. 4 is an illustration of an exemplary graphical user interface thatmay be presented to an advertiser.

FIG. 5 illustrates an exemplary content host subsystem.

FIG. 6 is a graphical illustration of quantified popularity anddemographic accuracy over the lifespan of a media content instance.

FIG. 7 is a flowchart illustrating an exemplary method of hosting andmatching advertising content to media content.

DETAILED DESCRIPTION I. Introduction

Exemplary content hosting and advertising systems and methods aredescribed herein. In some examples, a content host subsystem isconfigured to host media and advertising content. The media content mayinclude one or more media content instances, which term, as used herein,refers generally to any television program, on-demand program,pay-per-view program, broadcast media program, video-on-demand program,independently-produced media, studio-produced media, video, multimedia,movie, song, photograph, audio programming, or any segment, portion,component, or combination of these or other forms of media content thatmay be presented to and experienced (e.g., viewed) by a user. A mediacontent instance may have one or more components. For example, anexemplary media content instance may include a video component and anaudio component. The advertising content may include one or moreadvertising content instances, which term, as used herein, refersgenerally to any sponsored video, multimedia, movie, song, photograph,audio programming, or any segment, portion, component, or combination ofthese or other forms of advertising content that is sponsored by anadvertiser and that may be presented to and experienced (e.g., viewed)by a user.

The content host subsystem may receive media content from contentproducers and advertising content from advertisers. The contentproducers and advertisers may use access devices to provide (e.g.,upload) the content to the content host subsystem over at least onenetwork. The content host subsystem can distribute the media andadvertising content for experiencing by consumers. The content may bedistributed to the consumers over the network and may be provided inresponse to consumer requests to access media content.

The content host subsystem may be configured to dynamically matchadvertising content to media content in a targeted manner. When arequest for access to a media content instance is received from a user,for example, the content host subsystem can select at least oneadvertising content instance that is targeted at the media contentinstance and/or the user requesting the media content instance. Theselection may be determined based on user profile data associated withthe user, media content attribute data associated with the media contentinstance, and content matching data associated with the advertisingcontent provided by the advertisers. The selected advertising contentinstance may be provided for presentation to the user. The advertisingcontent can be presented along with (e.g., at the beginning of the) themedia content instance.

Examples of user profile data, media content attribute data, and contentmatching data are described in detail further below. In general, theuser profile data, media content attribute data, and content matchingdata enable the content matching subsystem to match advertising contentto media content in a highly targeted manner and based on user-provideddata and/or up-to-date real time data. With this data, dynamic matchingcan be based on real time snapshots of micro-scale (i.e., “sliver”)demographics, including demographics specific to individuals, mediaattributes, and tracked events.

Accordingly, the exemplary systems and methods described herein canbenefit advertisers by providing significant capabilities for highlytargeted advertising. Advertisers may experience increased returns oninvestment and may be willing to pay premiums for the robust targetingcapabilities of the systems and methods described herein.

Consumers can also benefit. Consumers are generally very likely to bepresented with relevant and interesting advertisements. The number ofirrelevant or uninteresting advertisements experienced by users may berelatively few as compared to conventional targeted advertisingservices. With dynamic placement of advertising content, consumers maybe presented with advertisements that are selected based on currentcontent matching data. In certain embodiments, different advertisementsmay be matched for different viewings of the same media content that hasbeen recorded by a consumer. That is, the advertisements included in theoriginal recording of the media content can be updated with differentadvertisements for a subsequent viewing of the media content.

Content producers can also benefit from the systems and methodsdescribed herein. In certain embodiments, content producers can elect toshare advertising revenue generated from advertisements being matched tothe media content provided by the content producers. For example, acontent producer may opt-in to a revenue sharing plan, and the contentproducer may receive a share of advertising fees that are charged toadvertisers when their advertisements are matched to media contentprovided by the content producer. Accordingly, content producers haveincentives to provide media content, such incentives including thedistribution of the content and the potential to receive revenue for thedistribution of the content. In some examples, a share of revenue may berewarded for each time media content is accessed, which can give contentproducers incentive to produce quality content.

One or more parties distributing the media content can also benefit fromthe systems and methods described herein. In some embodiments, forexample, a distributor may be awarded a share of the advertisingrevenues. In addition, a potential to share revenue may attract contentproducers and quality media content to the distributor, therebyenhancing the library of media content hosted by the distributor. Alibrary of differentiating content can increase the appeal of servicesprovided by the distributor.

Components, functions, and benefits of exemplary embodiments of contenthosting and advertising systems and methods will now be described inmore detail.

II. Exemplary System View

FIG. 1 illustrates an example of a content hosting and advertisingsystem 100, according to one embodiment. As shown in FIG. 1, contenthosting and advertising system 100 (or simply “system 100”) may includea content host subsystem 110 communicatively connected to a plurality ofaccess devices 120 by network 115. The access devices 120 and thecontent host subsystem 110 may communicate over the network 115 usingany suitable communication technologies, including any of thosedescribed below.

The access devices 120 may be associated with and/or operated bydifferent categories of users or entities, including content producers,advertisers, consumers, and affiliates. For example, a first accessdevice 120 may be operated by a content producer 125, a second accessdevice 120 may be operated by an advertiser 130, a third access device120 may be operated by a consumer 135, and a fourth access device 120may be operated by an affiliate 140. While FIG. 1 shows one contentproducer 125, one advertiser 130, one consumer 135, and one affiliate140 each associated with a different access device 120, this isillustrative only. Typically, there may be multiple content producers125, advertisers 130, consumers 135, and affiliates 140 associated withvarious access devices 120.

The content host subsystem 110 may be configured to recognize thecategory of a user and provide a particular user interface (e.g., agraphical user interface) to the user based on the category. Forexample, the content host subsystem 110 may provide the content producer125 with a content producer interface, the advertiser 130 with anadvertiser interface, the consumer 135 with a consumer interface, andthe affiliate 140 with an affiliate interface. Through the various userinterfaces, users are able to provide and receive content andinformation to/from the content host subsystem 110. For example, contentproducers 125 may provide media content, advertisers 130 may provideadvertising content, consumers 135 may request media content, and thecontent host subsystem 110 may dynamically match advertising content torequested media content and provide the matched content for experiencingby consumers 135, as described below.

A user or entity may be associated with one or more user categories.Thus, there may be some overlap of categories among users. For example,a particular user who uploads advertising content may be associated withan advertiser category. The same user may also upload media content andbe associated with a content producer category. This is just oneexample. Other overlaps of categories may be accommodated by the system100. Each of the components of the system 100 will now be described inadditional detail.

A. Network

The access devices 120 and the content host subsystem 110 maycommunicate over the network 115 (and communication links thereto) usingany known communication technologies, devices, media, and protocolssupportive of remote data communications, including, but not limited to,data transmission media, communications devices, Transmission ControlProtocol (“TCP”), Internet Protocol (“IP”), File Transfer Protocol(“FTP”), Telnet, Hypertext Transfer Protocol (“HTTP”), SessionInitiation Protocol (“SIP”), socket connections, Ethernet, and othersuitable communications networks and technologies.

The network 115 may include one or more networks, including, but notlimited to, closed media networks, cable networks, subscriber televisionnetworks, satellite networks, the Internet, intranets, local areanetworks, wireless networks (e.g., mobile telephone networks), publicnetworks, private networks, optical fiber networks, and any networksused for gaming or virtual simulation applications. In certain exemplaryembodiments, the network 115 includes a broadband network capable ofdelivering different services (e.g., media content services, Internetaccess services, and voice communication services) to the access devices120.

Communications between the content host subsystem 110 and the accessdevices 120 may be carried using any one of above-listed networks, orany combination of the above-listed networks. In certain embodiments,network 115 may include one or more provider-specific networks (e.g., awireless telephone network and/or subscriber television network such asa Verizon® FIOS® network) and one or more open networks (e.g., theInternet).

FIG. 2 illustrates an exemplary configuration of system 100 in which thecontent host subsystem 110 may communicate with access devices 120 overa closed media network 210 and/or an open network 220. The closed medianetwork 210 may include one or more closed media networks configured toprovide media content to authenticated users (e.g., subscribers). Incertain embodiments, the closed media network 210 is closed at leastbecause a content provider associated with the content host subsystem110 controls the media content made available over the network 210.

In certain embodiments, the closed media network 210 includes asubscriber television network such as a cable television network,satellite television network, optical fiber television network, aprovider-specific television network (e.g., a Verizon® FIOS® networkand/or a TiVo® network), a provider-specific broadband network, awireless communication (e.g., cellular) network, a telephone network, orany combination thereof. In other embodiments, the closed media network210 may include different closed networks providing subscribers withaccess to other types of media and/or communication content, including asatellite media broadcasting network or terrestrial media broadcastingnetwork (e.g., satellite radio), for example. In certain embodiments,the content host subsystem 110 provides media content to subscribers whopay a premium for service (e.g., a subscription).

The open network 220 may include one or more open networks configured tocarry content (e.g., media content) to access devices 120 connected tothe network 220. In certain embodiments, the open network 220 is open atleast because content from more than one provider (e.g., content fromproviders other than the content provider associated with the contenthost subsystem 110) can be made available on the open network 220. Theopen network 220 may include the Internet.

As described below, in certain examples the closed nature of the closedmedia network 210 may be utilized by the content host subsystem 110 tomatch advertising content to media content. For example, the contenthost subsystem 110 may track media consumption on the closed medianetwork 210 and use the tracked data to derive detailed user profiledata including data representative of consumer media consumption eventsand habits, which data can be used to match advertising content toconsumers 135 on an individual and highly detailed level. The dataderived from the closed media network 210 may be extrapolated and usedto fill in user profile data that may be lacking for certain consumers135 accessing media content over the open network 220.

B. Access Device

Access device 120 may include any device physically or remotelyaccessible to one or more users and that allows a user to providecontent and information to and/or receive content and information fromthe content host subsystem 110. For example, a user utilizing an accessdevice 120 may request, receive, and experience media and/or advertisingcontent provided by the content host subsystem 110. Another userutilizing an access device may provide (e.g., upload) media oradvertising content and corresponding data to the content host subsystem110.

Access device 120 can include, but is not limited to, one or moredesktop computers, laptop computers, tablet computers, personalcomputers, personal data assistants, wireless communication devices(e.g., cellular telephones and satellite pagers), wireless internetdevices, embedded computers, video phones, Verizon One® phones,video-enabled wireless phones, mainframe computers, mini-computers,vehicular computers, entertainment devices, gaming devices, musicdevices, closed media network access devices, set-top boxes, digitalvideo recorders, personal video recorders, any network-connected devicehaving a display or content processing capability, content recordingdevices (e.g., video cameras such as camcorders and still-shot digitalcameras), and any other devices capable of providing content to and/orreceiving content from the content host subsystem 110. Access device 120can also include various peripherals such as a terminal, keyboard,mouse, display screen, printer, stylus, input device, output device, orany other apparatus that can help provide interaction with access device120.

Access device 120 may include instructions for generating and operatingone or more user interfaces. These instructions may be in anycomputer-readable format, including software, firmware, microcode, andthe like. When executed by a processor (not shown) of access device 120,the instructions may present a user interface to a user. The userinterfaces may include content and data provided by the content hostsubsystem 110. As described below, the content host subsystem 110 mayprovide different user interface content and data based on a category ofuser utilizing an access device 120. Exemplary categories of users andcorresponding user interfaces will now be described.

C. Content Producer

Content producer 125 may include any person or entity providing mediacontent to the content host subsystem 110. The media content may beprovided in any suitable manner, including uploading the content overnetwork 115. The content producer 125 may be independent or associatedwith a studio. Accordingly, the media content hosted by the content hostsubsystem 110 may include independent and/or studio-produced mediacontent. While FIG. 1 shows the content producer 125 being able toprovide media content by way of an access device 120 (e.g., a personalcomputer or wireless phone) and network 115, this is illustrative only.In other examples, a content producer 125 may provide media contentdirectly to the content host subsystem 110.

In addition to media content, content producer 125 may provide data tobe associated with the media content. Such data may be referred to asmedia content attribute data, which may include any metadata and/orother information (e.g., keyword tags) descriptive of media content orcontent provider attributes. Media content attributes may include, butare not limited to, content subject matter, genre (e.g., comedy, drama),production date, release date, cast and crew names, content ratings(e.g., general, mature, etc.), intended audience (i.e., targetaudience), and synopsis of the media content. Content providerattributes may include, but are not limited to, producer names andproducer biographies. The media content attribute data may include anyinformation potentially helpful for attracting consumer traffic to themedia content, including keywords that can be identified when consumers135 search for media content. The media content attribute data mayinclude data provided by content producers 125, as well as datagenerated by the content host subsystem 110, as described below.

The media content attribute data can be used by the content hostsubsystem 110 to match advertising content to media content in a highlytargeted manner, as described below. The media content attribute data(e.g., metadata) can be used for identifying and flagging media content.For example, a user may search for and/or flag a media content instancehaving a specific metadata value (e.g., a particular actor name).Moreover, the system 100 may be configured to recommend media content tousers based on metadata. Thus, the metadata can promote the viralspreading of uploaded media content and augment the ability of thesystem 100 to target advertising content at a high level of detail(e.g., at a sliver demographic level).

When receiving media content from a content producer 125, the contenthost subsystem 110 may be configured to request subscription informationfrom the content producer 125. Subscription information may includeproducer contact information, billing information, and a selection of asubscription plan. In some examples, the content host subsystem 110 mayprovide different subscription plans from which the content producer 125may choose. For example, a certain amount of media content within afirst tier (e.g., up to two gigabytes of data storage) may be uploadedand hosted by the content host subsystem 110 free of charge under afirst subscription plan, a second subscription plan may charge a fee foran additional amount of data storage, a third subscription plan maycharge a larger fee for an increased amount of data storage, and so on.

In accordance with the subscription plans, the content host subsystem110 may function as a host (e.g., a repository) of media content and candistribute the media content to consumers 135. In other words, thecontent host subsystem 110 provides tools to content producers 125 tofacilitate distribution of their content.

Other value added services may be provided as part of certainsubscription plans. For example, certain subscription plans may allowcontent producers 125 to set an amount to be charged for each access(e.g., download or viewing) of media content. For example, providers ofpay-per-view or on-demand content may establish a price to be chargedfor each download of the content. Another example of a value-addedservice includes placement of content producer information in asearchable business directory.

The content host subsystem 110 may also provide the content producer 125with advertising and revenue options, and the content producer 125 maychoose to participate in (e.g., opt into) these options. For example,the content producer 125 may determine whether to enable or disableadvertising content matching for media content. When advertising contentmatching is enabled for media content, the content host subsystem 110may dynamically match advertising content to the media content, asdescribed herein. Accordingly, the content host subsystem 110 canprovide relevant and interesting advertising content for presentationalong with the media content. For example, a selected advertisingcontent instance may be matched to and presented before a media contentinstance is presented. Examples of advertising matching will bedescribed further below.

As an incentive to participate in advertising matching, the content hostsubsystem 110 may be configured to share advertising revenue with thecontent producer 125. With advertising matching enabled, the contenthost subsystem 110 may provide the content producer 125 with a share ofadvertising revenue generated by media content provided by the contentproducer 125. As described below, advertisers 130 may pay when theiradvertising content is matched to media content. The content hostsubsystem 110 may be configured to track the advertising revenuegenerated by the media content. The revenue may be shared between thecontent producer 125 and one or more parties distributing the mediacontent (e.g., a party operating the content host subsystem 110). Inthis manner, advertising revenue can be used to compensate contentproducers 125 for their media content. Examples of revenue sharing willbe described in more detail further below.

The content producer 125 may provide information related to payment ofrevenue shares. For example, the content producer 125 may providepayment information (e.g., payment method, account identifiers, and/oraddress information) descriptive of how the content producer 125 wishesto receive revenue payments. The content producer 125 may also provideinformation descriptive of how its share of the revenue is to be dividedup between different collaborators or other contributors to the mediacontent. Payment information and revenue sharing ratios may be providedsuch that the content host subsystem 110 is able to automaticallyallocate and pay out the revenue in accordance with the informationprovided by the content producer 125.

In some examples, the content host subsystem 110 may provide the contentproducer 125 with an option of choosing to allocate at least a portionof earned revenue to be invested in marketing of the media contenthosted by the content host subsystem 110. For example, the contentproducer 125 may pay for featured placement of media content, or to havethe media content, or trailers or snippets of the media content marketedin relation to other media content.

The content producer 125 may also determine whether to enable (e.g., optin) content syndication for media content. With content syndicationenabled, the content host subsystem 110 is configured to allow anaffiliate 140 (shown in FIG. 1) to promote the media content. Forexample, the affiliate 140 may post a link to the media content onanother platform such as a blog or web page operated by the affiliate140 or other third party. When a consumer 135 accesses the media contentthrough the third-party promotion, advertising revenue generated by thepresentation of the media content and selected advertising content maybe shared between the affiliate 140, the content producer 125, and theparty operating the content host subsystem 110. Content syndication mayhelp to virally increase the number of viewers and the quantifiedpopularity of media content, as well as the advertising revenuegenerated by the media content.

The content host subsystem 110 may be configured to provide the contentproducer 125 with one or more user interfaces having tools enabling thecontent producer 125 to provide media content and associatedinformation. The user interface may also include tools for tracking andmanaging media content that has been provided to the content hostsubsystem 110. The tools may enable the content producer 125 to monitorthe performance of and revenue raised by published media content.Information provided to the content producer 125 through a contentproducer interface may include, but is not limited to, a list ofpublished media content instances, statistics about the performanceand/or distribution of the media content, content syndicationstatistics, revenue statistics, demographic information associated withconsumers 125 accessing the media content, and feedback (e.g., ratings)provided by consumers 125.

FIG. 3 illustrates an exemplary graphical user interface 300 that may bepresented to the content producer 125 by way of an access device 120. Asshown in FIG. 3, the graphical user interface 300 may provide tools formanaging media content and associated accounts. Exemplary tools mayenable the content producer 125 to add and remove media content, viewratings and reviews of media content, view income generated by the mediacontent, view information about advertisers 130 and/or associatedadvertisements that have been matched to media content, view ofadvertising fees paid for advertising content matches to media content,view overall statistics for the content producer 125 or for mediacontent, view media content-specific statistics, view messages fromother users, view and change settings (e.g., the media content attributedata and/or subscription settings associated with media content), andlink to other user interfaces such as a V-log associated with thecontent producer 125.

In the view shown in FIG. 3, a media content-specific statistics option(i.e., “Media Stats”) is selected and corresponding informationdisplayed. With this option selected, the graphical user interface 300may present a list of published media content instances and information(e.g., statistics) associated with each media content instance. Examplesof such information may include but are not limited to a media contentidentifier (e.g., a title), visual image from the media contentinstance, publication date, the number of times the media contentinstance has been accessed (e.g., viewed, downloaded, or otherwiseexperienced by consumers 135), the amount of revenue raised by the mediacontent instance, user rating information (e.g., the average user ratingfor the media content instance), and the number of users that have ratedthe media content instance. The example shown in FIG. 3 is illustrativeonly and not restrictive in any sense. In other examples, different oradditional information may be provided to the content producer 125 in auser interface. For example, daily performance or revenue statistics maybe shown and may include a graphical chart illustrating the number ofdownloads per day. In certain examples, the content producer 125 is ableto view detailed statistics related to the performance of media content.The detailed statistics may be at any level of granularity, includinginformation for each instance of an advertisement being matched to mediacontent and/or a fee paid for the match.

The graphical user interface 300 may also include a summary ofstatistics for the content producer 125. The summary may include, but isnot limited to, the number of active media content instances (e.g.,active videos), an overall average consumer rating of published mediacontent, total number of access (i.e., media consumption) events (e.g.,downloads) for the active media content instances, the current rate atwhich media content is being accessed (e.g., current number of downloadsper minute), and overall revenue information such as total revenueearned (e.g., year-to-date revenue), total revenue collected fromadvertisers 130, total revenue transferred to the content producer 125,available revenue balance, and overall average revenue peradvertisement.

Through the graphical user interface 300, which may also be referred toas a content producer interface 300 or content producer dashboard 300,content producer 125 is able to view and manage media content instances,including viewing any of the above-described information, publishing newmedia content instances, removing published media content instances,setting access prices for media content instances such as on-demand andpay-per-view media content instances, and modifying information (e.g.,media content attribute data) associated with the media contentinstances. For example, the content producer 125 may modify mediacontent attribute data such as target audience information to attempt toimprove the performance of the corresponding media content instance.

The content producer dashboard 300 provides the content provider 125with robust capabilities to publish media content, manage publishedmedia content, and monitor the distribution and performance (e.g.,revenue generated by) the media content. The information included in thecontent producer dashboard 300 may include up-to-date information thatis updated in real time or near real time. For example, upon detecting adownload of a published media content instance, the content hostsubsystem 110 may provide updated download and revenue data forinclusion in the dashboard 300. The above-described information that maybe included in the content producer dashboard 300 and that relates tothe distribution or performance of media content may be collectivelyreferred to as real time performance metrics. The type and/or amount ofinformation included in the real time performance metrics may be basedon service level agreements. Thus, in certain embodiments, a contentproducer 125 may pay a premium for access to certain information.

With the above-described tools, the content producer 125 is able toconveniently publish media content. Moreover, the content producer 125has significant control over the data that will be used by the contenthost subsystem 110 to identify and provide media content to consumers135 and to select advertising content to be matched to the mediacontent. In addition, the content producer 125 can monitor the real-timeperformance of the media content, including the advertising incomegenerated by the media content. Accordingly, the system 100 provides foran effective distribution of media content, as well as content producercompensation in the form of income that is based on the performance ofthe media content.

D. Consumer

The content host subsystem 110 may distribute the media content receivedfrom content producers 125 for experiencing by consumers 135. Forexample, a media content instance uploaded by a content producer 125 maybe made available for experiencing by consumers 135 using access devices120 communicatively connected to the content host subsystem 110 by thenetwork 115.

Consumers 135 may initiate requests to access media content hosted bythe content host subsystem 110. The requests may be initiated in anysuitable manner, and data representative of a request may be sent froman access device 120 to the content host subsystem 110. The accessrequests may include requests to download media content from the contenthost subsystem 110 to an access device (e.g., for playback orrecording), or requests to playback media content that has beenpreviously downloaded from the content host subsystem 110 and storedlocally on an access device 110. Accordingly, a consumer 135 may includeany person or entity accessing and/or experiencing media content hostedby the content host subsystem 110.

As described further below, when requests to access media content arereceived, the content host subsystem 110 can match advertising contentto the requested media content such that the advertising content can bepresented to consumers 135 along with the media content. The matchingmay be performed in a highly targeted manner such that consumers 135experience relevant and interesting advertising content.

The content host subsystem 110 may be configured to provide consumers135 with tools for and related to experiencing content. For example,tools may be provided that enable a consumer 135 to rate content (e.g.,by providing a star rating for media and/or advertising content), rankcontent with respect to other content, provide feedback and reviews ofcontent, rate feedback provided by other consumers 135, assess the valueof feedback provided by other consumers 135 based on a similarity score(i.e., a score based on how similarly consumers 135 rated content and/orthe similarity of viewing habits of the consumers 135), form communitiesof consumers 135 (e.g., discussion groups), add content to a list offavorites, flag content as described in U.S. patent application Ser. No.11/474,992, by Heath Stallings et al., entitled MEDIA CONTENT ACCESSSYSTEMS AND METHODS, filed Jun. 27, 2006, the content of which is herebyincorporated by reference in its entirety, share content or snippets ofcontent as described in U.S. patent application Ser. No. 11/474,991, byHeath Stallings et al., entitled SNIPPET ACCESS SYSTEMS AND METHODS,filed Jun. 27, 2006, the content of which is hereby incorporated byreference in its entirety, post links to or otherwise promote content onother platforms (e.g., on a consumer blog or web page), find and accesstop-rated or most popular content (based on quantified popularity scoresfor media content), share playlists, view snippets of content, viewtrailers of content, set reminders for pay-per-view or other contentdistribution events, purchase content, download content, view content,and any other tool that is potentially helpful for enhancing theexperience of the consumer 135 and/or for enabling the consumer 135 tocommunicate with others about the experience. Accordingly, consumers 135are able to help facilitate a viral distribution of content.

In system 100, the consumer 135 has an associated user profile includinguser profile data descriptive of attributes, demographics, actions,and/or habits of the consumer 135. The user profile may be maintained bythe content host subsystem 110. In certain embodiments, each consumer135 who is able to consume content provided by the content hostsubsystem 110 has an associated user profile maintained by the contenthost subsystem 110. User profiles may include various information andvarious levels of detail for different consumers 135.

User profile data may be accounted for when matching advertising contentto media content. Accordingly, advertising content can be targeted tospecific consumers 135 on an individual basis. User profile data mayinclude any information descriptive of consumer contact information,age, age group, gender, marital status, income level, ethnicity,religion, political affiliation, interests, hobbies, preferences, homeowner versus renter status, credit score, geographic identifier (e.g.,address, zip code, or area code), buddy lists, group memberships oraffiliations, digital rights management information, and any otherconsumer demographic information. User profile data may be voluntarilyprovided by the consumer 135 via an access device 120. In some example,incentives (e.g., reduced subscription rates or the potential to notreceive irrelevant or uninteresting advertisements) may be offered toconsumers 135 in exchange for certain user profile information.

In addition to user-provided information, user profile data may alsoinclude information generated by the content host subsystem 110,including, for example, information about media consumption events andhabits (e.g., viewing or download logs or histories) exhibited by theconsumer 135 and tracked by the content host subsystem 110. Forinstance, the user profile data may indicate the media content instancesthat have been recently accessed (e.g., downloaded) by the consumer 135.These may be referred to as media consumption events, and the contenthost subsystem 110 may track and record the events to generate a mediaconsumption history. The tracked media consumption events may be used toderive demographic information about users (e.g., media content ratingsfor media content accessed by a user).

As described below, tracked user profile data can be considered whenmatching advertising content to media content. In certain embodiments,tracked user profile data may be combined with and/or given more weightthan consumer-provided user profile data for purposes of matchingadvertising content to media content. For example, the consumer 135 mayprovide certain demographic information indicative of a firstdemographic group, but the tracked viewing habits of the consumer 125may be more in line with another demographic group. The content hostsubsystem 110 may be configured to recognize this situation and placemore weight on the tracked demographic data (e.g., viewing habits) thanon the consumer-provided demographic data.

The content host subsystem 110 may be configured to provide consumeruser interfaces to consumers 135. The consumer user interfaces mayprovide the consumers 135 with tools for performing any of theabove-described functions, including requesting access to, receiving,experiencing, and rating media and advertising content. A consumer userinterface may also provide a consumer 135 with tools for managing hisuser profile, including providing and updating user profile data.

A consumer 135 may utilize a user interface to provide user profile datathat can be used by the content host subsystem 110 to determined contentto be or not to be provided to the consumer 135. The consumer 135 canuse this as a tool for controlling what content is provided to theconsumer 135. For example, a consumer 135 may rate an advertisement. Ifthe consumer 135 provides a negative rating that is below apredetermined threshold, the content host subsystem 110 may prevent thesame advertisement from being provided to the consumer 135 in thefuture. In this manner, the consumer 135 can provided data for screeningadvertisements, including advertisements that may be offensive,irrelevant, or unwanted.

E. Affiliate

An affiliate 140 may include any person or entity promoting the contentof another. For example, an affiliate 140 may include a consumer 135,content producer 125, or other person or entity who promotes content ofanother hosted by the content host subsystem 110. An affiliate promotionmay include a link posted on another platform or at another access pointsuch as a website (e.g., a third-party website such as www.myspace.com),blog, or V-log associated with the affiliate 140 or a third party. Whena person actuates the link, a call is made to the content host subsystem110, and the person may be redirected to or provided with an applicationand/or user interface provided by the content host subsystem 110. Theapplication may include an embedded media player configured to presentthe content associated with the link and hosted by the content hostsubsystem 110. The embedded media player may be configured to enable thecontent host subsystem 110 to continue to enforce digital rightsmanagement considerations for indirectly accessed media content. Theembedded media player may also enable the content host subsystem 110 totrack distribution of and data associated with indirect mediadistribution and consumption.

Another example of an affiliate promotion is a stitching of mediacontent of one content producer 125 to the media content of anothercontent producer 125. For example, a first media content instance may bestitched at the beginning of a second media content instance forpresentation along with the second media content instance. The contentproducer 125 associated with the second media content instance mayproactively allow the content host subsystem 110 to attach other mediacontent and may be compensated for the allowance. Such a contentproducer 125 may also be an affiliate 140. In other words, a consumer135 can become an affiliate 140 by opting into a revenue sharing planand promoting the content of another.

Affiliates 140 may be rewarded for promoting content of others. Forexample, an affiliate 140 may receive a share of advertising revenueraised in association with the promoted content. This may be referred tocompensated syndication, which can help to virally spread content to awide audience of potential viewers. In this manner, the distribution,popularity, and value of media content can be maximized quickly, therebyleading to increased revenue from advertisers 130.

F. Advertiser

Advertiser 130 may include any person or entity providing advertisingcontent to the content host subsystem 110. Typically, the advertiser 130sponsors the advertising content by agreeing to pay for its distributionto consumers 135. The advertising content may be provided in anysuitable manner, including uploading the content over network 115. WhileFIG. 1 shows the advertiser 130 being able to provide advertisingcontent by way of an access device 120 and network 115, this isillustrative only. In other examples, an advertiser 130 may provideadvertising content directly to the content host subsystem 110.

In addition to advertising content, the advertiser 130 may provide dataassociated with the advertising content. Such data, which may bereferred to as content matching data, may include, but is not limitedto, any information descriptive of the advertising content and/or theadvertiser 130. For example, the content matching data may includedescriptors (e.g., keywords) descriptive of the advertising content orattributes of the advertising content, including advertisement subjectmatter, genre, length, data format type, data storage requirements,content rating (e.g., for general or mature audiences), and qualitylevel (e.g., video quality level and/or resolution), for example.

Content matching data may include advertiser-specified criteria to beconsidered when matching the advertising content to media content. Forexample, the content matching data may specify any media contentattributes and/or content producer attributes that should be associatedwith any media content instance to which the advertising content may bematched. Examples of such attributes may include any of the mediacontent attribute data described above, including descriptors of mediacontent subject matter, genre (e.g., comedy, drama), production date,release date, cast and crew names, content ratings (e.g., general,mature, etc.), intended audience, as well as producer names andbiographies.

Any targeted media content attributes included in the content matchingdata may be referred to as targeted media content criteria. For example,content matching data may include targeted media content popularitycriteria and targeted media content rating criteria.

Content matching data may further include advertiser-specified consumerattributes that should be associated with any consumer 135 accessingmedia content to which the advertising content may be matched.Advertiser-specified consumer attributes may include any user profiledata described above, including consumer-provided demographicinformation and/or tracked consumer attributes (tracked mediaconsumption events and/or habits).

Any targeted consumer attributes included in the content matching datamay be referred to as targeted consumer criteria. For example, contentmatching data may include targeted user demographic criteria.

Content matching data may also specify exclusionary criteria, includingany media content attributes, content provider attributes, and/or userprofile data that should be used as grounds for precluding a match ofadvertising content to the corresponding media content. In other words,advertiser 130 may provide exclusionary content matching data that canbe used to prevent advertising content from being matched with mediacontent possessing certain attributes (e.g., a mature rating or aspecific demographic group) or being accessed by consumers 135 havingcertain demographics. For example, a user profile associated with aconsumer 135 may include user profile data specifying that the userprofile is limited to viewing content that is rated for “generalaudiences.” This may be a user profile associated with a child, forexample. The content matching data for an advertisement may specify thatthe advertisement has a “mature” rating. The content host subsystem 110can be configured to recognize this data and determine that theadvertisement should not be matched to the particular consumer 135 basedon the rating of the advertisement.

Content matching data may also include financial data that may influencecontent matching determinations. For example, the advertiser 130 mayprovide financial information associated with advertising content,including bid data such as a maximum bid amount that the advertiser 130is willing to pay for placement (i.e., matching) of the advertisingcontent. In certain examples, the maximum bid amount may specify anamount of money that the advertiser 130 is willing to pay as a fee foreach time an advertising content instance is matched to a media contentinstance and provided for experiencing by a consumer 135. This may bereferred to as a per-view advertising fee.

Additionally or alternatively, advertising fees may be based at least inpart on other predetermined actions (i.e., a per-action fee basis). Forexample, an advertiser 130 may agree to pay a fee for the occurrence ofany measurable action such as when an advertising content instancegenerates a lead (a user experiencing the advertisement requestsadditional information such as by selecting a hyperlink to an advertiserwebsite), transaction (e.g., a sale), or other measurable event. Inalternative embodiments, advertisers 130 may enter into a type of feearrangement other than fee-per-event basis (e.g., a set fee foradvertisement placement for a specific period of time). As describedfurther below, the bid data may be used by the content host subsystem110 to match advertising content to media content, with advertisingcontent having higher bids generally being given preference overadvertising content having lower bids.

The content host subsystem 110 may receive and apply advertiser bids inan auction format. For, example, advertisers 130 may bid to secure aright to have their respective advertising content instances matched tomedia content instances that satisfy particular content matchingcriteria. For example, advertisers 130 may bid for the right to haveadvertising content placed during a specific time period, for aparticular segment of the lifespan of media content, or while mediacontent surpasses a particular popularity threshold. Alternatively, biddata associated with advertising content may be dynamically consideredon a match-by-match process. The bid data may be factored into a matchassessment and may be given any weight as may best suit a particularapplication. In certain embodiments, bid data may be used to select froma plurality of advertising content instances that at least satisfy arelevancy threshold for being matched to a particular media contentinstance. The advertising content instance having the highest bid may beselected, which can help maximize advertising fees and revenues to thebenefit of the content producers 125 and the party distributing themedia content. In other words, the auction-style bids may help increasethe revenue generated by the system 100 as advertisers 130 vie forcontent matching priority.

The advertiser 130 may also specify a maximum amount not to be exceededfor distribution of an advertising content instance or for multipleadvertising content instances included in an advertising campaign. Thefee limit may be for the entire publication period of advertisingcontent as specified by the advertiser 130 (i.e., a campaign limit), orfor a smaller recurring time period. For example, the advertiser 130 mayset a daily fee limit. Once distribution of the advertising contentinstance(s) causes advertising costs to reach the predefined maximumlimit, the content host subsystem 110 will abstain from matching theadvertising content instance(s), at least for the remainder of the timeperiod associated with the limit (e.g., a daily fee limit).

By providing the advertiser 130 with tools for specifying contentmatching data, the content host subsystem 110 provides the advertiser130 with significant and detailed control over the matching ofadvertising content to media content. The detailed level of controlprovided by the system 100 can improve the effectiveness (e.g., thereturn on investment) of targeted advertising as compared to conventiontarget advertising techniques. To illustrate the detailed controlavailable to advertisers 130, a particular advertiser 130 who uploads anadvertising content instance can provide content matching dataspecifying that the advertising content instance should only be matchedwith media content instances having a at least a predefined level ofpopularity and not having an adult or mature content rating. Forexample, the advertiser 130 could further specify that the advertisingcontent should only be matched with media content instances when themedia content instances are being accessed by a male consumer 135 who is18-34 years of age and who viewed the most recent episode of a showcurrently on television called “LOST”. In this or similar manner, theadvertiser 130 is able to provide detailed content matching criteriathat can be used to target a desired demographic on aconsumer-by-consumer basis and to control the type of media content towhich advertising content may or may not be appended. The detailed levelof control provided to advertisers 130 also enables them to specifyspecific events (e.g., a download of a particular media contentinstance) to be considered when matching advertising content to mediacontent.

The content host subsystem 110 may be configured to provide theadvertiser 130 with one or more user interfaces having tools enablingthe advertiser 130 to provide advertising content and associatedinformation. The user interface may also include tools for tracking andmanaging advertising content and content matching data that has beenprovided to the content host subsystem 110. The tools may enable theadvertiser 130 to monitor the distribution of advertising content (e.g.,the number of times an advertising content instance has been matched andpresented to consumers 135) and the fees charged for distribution of theadvertising content. Information provided to the advertiser 130 may betracked and updated in real time and may include, but is not limited to,a list of active advertising content instances, statistics about theperformance and/or distribution of the advertising content, contentsyndication statistics and information (e.g., percent of downloadsinitiated at affiliate 140 sites), advertising fee statistics,demographics of consumers 125 experiencing the advertising content, dataassociated with media content to which the advertising content ismatched, content trends (e.g., matching trends), and feedback (e.g.,ratings) provided by consumers 125.

FIG. 4 illustrates an exemplary graphical user interface 400 that may bepresented to an advertiser 130 by way of an access device 120. As shownin FIG. 4, the advertiser 130 may be provided with tools for managingadvertising content and associated accounts and data. Exemplary toolsenable the advertiser 130 to add and remove advertising content, viewratings and reviews of advertising content, view fees charged fordistribution of the advertising content, view overall statistics (e.g.,distribution metrics for advertising content), links to media contenthaving high ratings, high download rates, or other desirable performancelevels, links to demographic and/or other information for consumers 135who have provided ratings for or other comments about advertisingcontent (which may help advertisers 130 qualify or disqualify thefeedback), view advertising content-specific statistics, view messagesfrom other users, and view and change settings, including updatingcontent matching data to attempt to improve the targeted distribution ofthe corresponding advertising content.

In the view shown in FIG. 4, an advertisement-specific statistics option(i.e., “Ad Stats”) is selected and corresponding information displayed.With this option selected, the user interface 400 may present a list ofactive advertising content instances and information (e.g., statistics)associated with each advertising content instance. Examples of suchinformation include but are not limited to an advertising contentidentifier (e.g., an ad title), visual image from the advertisingcontent instance, start and end dates for the time period in which theadvertising content instance is active (i.e., published), the number oftimes the advertising content instance has been accessed (e.g., viewed,downloaded, or otherwise experienced by consumers 135), the amount ofaccumulated fees charged for distribution of the advertising contentinstance, the average fee per view for the advertising content instance,and the advertiser-specified maximum fee limit for the advertisingcontent instance. The example shown in FIG. 4 is illustrative only andnot restrictive in any sense. In other examples, different informationmay be provided to the advertiser 130 in a user interface. For example,daily statistics may be shown and may include a bar chart illustratingthe number of views per day. By way of another example, the userinterface 400 may include user rating information (e.g., the averageuser rating for the advertising content instance) and the number ofusers that have rated the advertising content instance.

The graphical user interface 400 may also include a summary ofstatistics for the particular advertiser 130. The summary may include,but is not limited to, the number of active advertising contentinstances, an overall average rating of published advertising content,total number of access events (e.g., views) for the active advertisingcontent instances, the current actual rate at which the advertisingcontent is being accessed (e.g., current number of views per minute),and overall fee information such as current fees associated with theactive advertising content instances and/or total fees charged (e.g.,year-to-date fees), total fees paid by the advertiser 130, current feebalance, and overall average fee per view.

Through the graphical user interface 400, which may also be referred toas advertiser dashboard 400, the advertiser 130 is able to view andmanage advertising content instances, including viewing any of theabove-described information, publishing new advertising contentinstances, removing published advertising content instances, settingmaximum ad placement fees, and modifying information (e.g., contentmatching data) associated with the advertising content instances.

The advertiser dashboard 400 provides the advertiser 130 withsignificant capability to provide advertising content, control andtarget the distribution of the advertising content, manage the activeadvertising content, and monitor the distribution of the advertisingcontent. The information included in the advertiser dashboard 400 mayinclude up-to-date information that is updated in real time or near realtime. For example, upon providing advertising content to a consumer 135,the content host subsystem 110 may record and provide updateddistribution and fee data for inclusion in the advertiser dashboard 400.

Any of the above-described information that may be included in theadvertiser dashboard 400 and that relates to the distribution ofadvertising content may be collectively referred to as real timedistribution or matching metrics. In some examples, the distributionmetrics may be exported to other applications such as a spreadsheetapplication. The type and/or amount of information included in the realtime distribution metrics may be based on advertiser agreements. Thus,in certain embodiments, an advertiser 130 may pay a premium for accessto certain information.

With the above-described tools, the advertiser 130 is able toconveniently target advertising content with a significant level ofcontrol. The advertiser 130 has detailed control over the contentmatching data that will be used by the content host subsystem 110 toidentify and provide advertising content to consumers 135. The contenthost subsystem 110 enables the advertiser 130 can monitor the real-timedistribution of the advertising content, as well as advertising feescharged for placement of the advertising content.

G. Content Host Subsystem

The content host subsystem 110 may be implemented in or include one ormore computing devices configured to perform the processes describedherein. In certain embodiments, elements of the content host subsystem110 may include any computer hardware and/or instructions (e.g.,software programs), or combinations of software and hardware, configuredto perform the processes described herein. In particular, it should beunderstood that elements of the content host subsystem 110 may beimplemented on one physical computing device or may be implemented onmore than one physical computing device. Accordingly, the content hostsubsystem 110 may include any one of a number of well known computingdevices, and may employ any of a number of well known computer operatingsystems, including, but by no means limited to, known versions and/orvarieties of the Microsoft Windows® operating system, the Unix operatingsystem, Macintosh® operating system, and the Linux operating system.

Accordingly, the processes described herein may be implemented at leastin part as instructions executable by one or more computing devices. Ingeneral, a processor (e.g., a microprocessor) receives instructions,e.g., from a memory, a computer-readable medium, etc., and executesthose instructions, thereby performing one or more processes, includingone or more of the processes described herein. Such instructions may bestored and transmitted using a variety of known computer-readable media.

A computer-readable medium (also referred to as a processor-readablemedium) includes any medium that participates in providing data (e.g.,instructions) that may be read by a computer (e.g., by a processor of acomputer). Such a medium may take many forms, including, but not limitedto, non-volatile media, volatile media, and transmission media.Non-volatile media may include, for example, optical or magnetic disksand other persistent memory. Volatile media may include, for example,dynamic random access memory (“DRAM”), which typically constitutes amain memory. Transmission media may include, for example, coaxialcables, copper wire and fiber optics, including the wires that comprisea system bus coupled to a processor of a computer. Transmission mediamay include or convey acoustic waves, light waves, and electromagneticemissions, such as those generated during radio frequency (“RF”) andinfrared (“IR”) data communications. Common forms of computer-readablemedia include, for example, a floppy disk, a flexible disk, hard disk,magnetic tape, any other magnetic medium, a CD-ROM, DVD, any otheroptical medium, punch cards, paper tape, any other physical medium withpatterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any othermemory chip or cartridge, or any other medium from which a computer canread.

FIG. 5 illustrates an exemplary content host subsystem 110. While anexemplary content host subsystem 110 is shown in FIG. 5, the exemplarycomponents illustrated in FIG. 5 are not intended to be limiting.Indeed, additional or alternative components and/or implementations maybe used. Each of the components of the exemplary content host subsystem110 will now be described in additional detail.

1. Access Module

The content host subsystem 110 may include an access module 510configured to receive and/or provide any of the content and datadescribed above, including media content, advertising content, mediacontent attribute data, user profile data, content matching data,updates to content and data, requests to access content, and real timeperformance and distribution statistics. The access module 510 may beconfigured to send and receive content, data, and other communicationsover the network 115. The access module 510 may include and/or supportany suitable communication technologies for communicating with theaccess devices 120 over the network 115. For example, the access module510 may include one or more servers (e.g., a media content server and/orweb server) configured to send and receive communications over thenetwork 115.

The access module 510 may receive access requests and authenticationinformation from one or more of the access devices 120. The accessmodule 510 may verify the authentication information and use theinformation to identify a corresponding user profile. The access module510 may also identify a category (e.g., a consumer 135) of the userassociated with the user profile. The access module may provide one ormore user interfaces and/or associated content and data to anauthenticated access device 120. The user interface may be selectedbased on the user profile and category of user associated with theauthentication information. For example, a consumer 135 may be providedwith a user interface that is specific to consumers 135, an advertiser130 may be provided with a user interface that is specific toadvertisers 130, and a content producer 125 may be provided with a userinterface that is specific to content producers 125. Certain data (e.g.,content performance statistics for a particular content producer 125)included in the user interface may be specific to the user profile.

Access requests may be configured to request content from the contenthost subsystem 110. For example, a consumer 125 may request access tomedia content (e.g., a pay-per-view or on-demand media contentinstance). As mentioned above, an access request may be to downloadmedia content from the content host subsystem 110 to locally access andplayback previously-downloaded media content stored on an access device120. For instance, when a consumer 125 requests to download a mediacontent instance or initiates playback of a locally stored media contentinstance, the access device 120 may provide an access request to thecontent host subsystem 110 for advertising content to be matched to themedia content instance. As described below, the content host subsystem110 may match advertising content to the access devices 120.

The advertising content may be transmitted over the network 115. Fordownload requests, the content host subsystem 110 may combine theadvertising content to the requested media content. Alternatively, theadvertising and media content may be transmitted separately and combinedat the access device 120. For requests to access locally stored mediacontent, the content host subsystem 110 may provide the advertisingcontent, which may be combined with the media content at the accessdevice 120.

Other access requests may be configured to request data such as mediacontent attribute data, content matching data, user profile data,content performance statistics, content distribution statistics, contentconsumption trends, account data, fee data, revenue data, or other datastored by the content host subsystem 110. For example, a contentproducer 125 may request access to data associated with media content,including performance, distribution, revenue, and/or other media contentattribute data, and an advertiser 130 may request access to dataassociated with advertising content, including distribution, revenue,and/or other content matching data. The access module may be configuredto provide any content and/or data to one or more access devices 120over the network 115.

Content and data received by the access module 510 may be propagatedthrough to a data management module 515 for storage in a data store 520.In this manner, data and content hosted by the content host subsystem110 can be provided and kept up to date by users of the system 100.

2. Data Store

Data store 520 may include one or more data storage mediums, devices, orconfigurations and may employ any type, form, and combination of storagemedia known to those skilled in the art, including hard disk drives,read-only memory, caches, databases, optical media, and random accessmemory. Data store 520 may include any known technologies useful forstoring, updating, searching, modifying, accessing, retrieving, anddeleting content and data. While FIG. 5 illustrates a single data store520, the data store 520 may include multiple data storage media,databases, or devices.

Data store 520 may store any suitable type or form of electronic datarepresentative of the content and data described above, including mediacontent, media content attribute data, user profile data, advertisingcontent, and content matching data, which are represented in FIG. 5 asreference numbers 522, 524, 526, 528, and 530, respectively.

The data and content stored in the data store 520 may be updated toreflect changes provided by users of the system 100. The data andcontent stored in the data store 520 can also be updated in accordancewith tracked data generated by the content host subsystem 110. Asdescribed further below, certain components of the content hostsubsystem 110 may be configured to track certain events and generatedata descriptive of the events. Such data may be stored in data store520. For example, tracked performance and distribution data may bestored in data store 520. Examples of tracked data will be describedfurther below. Updates to the data stored in data store 520 may beperformed in real time or near real time. Accordingly, users may beprovided with access to up-to-date real time information.

3. Data Management Module

Data management module 515 may include any devices and technologiesconfigured to manage the data stored in data store 520, includingaccessing, updating, searching, modifying, deleting, and adding to thedata. The data management module 515 may communicate with othercomponents of the content host subsystem 110 to receive data andinstructions, as well as to provide copies of data. For example, theaccess module 510 may provide updated data and instructions to the datamanagement module 515 for use in updating the data in data store 520, orthe access module 510 may instruct the data management module 515 toretrieve a copy of a particular media content instance that has beenrequested by a consumer 135.

4. Tracking Module

The tracking module 540 may include any devices and technologies fortracking events processed by or that are detectable by the content hostsubsystem 110. The tracked events may be recorded in logs, which can bestored as data in the data store 520. The tracked events may also beused to generate other data that may be stored in the data store 520,including a current popularity score of a media content instance, forexample. The tracking module 540 may provide tracked data to the datamanagement module 515 for storage in the data store 520. The trackeddata may be used when identifying advertising content to be matched tomedia content, as described below.

In certain embodiments, the tracking module 540 may be configured totrack access requests, or at least certain types of access requests,received by the access module 510. For example, the tracking module 540may track and log media consumption events such as requests for mediacontent. When a consumer 135 elects to access (e.g., download) aparticular media content instance, for example, the tracking module 540may record data representative of the event. The tracking module 540 mayprovide the data representative of the event to the data managementmodule 515, along with instructions to add the data to one of more mediaconsumption logs or histories.

The logs of tracked events can be user-specific. Accordingly, thecontent host subsystem 110 can maintain user-specific media consumptionhistories descriptive of individual media content viewing events. Theuser-specific histories may be included in or otherwise associated withuser profile data of user profiles. From the histories, the mediaconsumption habits (e.g., viewing habits) and/or specific mediaconsumption events exhibited by consumers 135 can be accessed and takeninto consideration when identifying advertising content to be matched tomedia content being accessed by consumers 135. For example, anadvertiser 130 may provide content matching data that will direct thecontent host subsystem 110 to match an advertising content instance onlyto consumers 135 who have in the past accessed a particular mediacontent instance (e.g., SPORTSCENTER) or particular genre of mediacontent instances (sports-related media content). The content hostsubsystem 110 can access user profile data including tracked mediaconsumption information to determine whether this content matchingcriterion has been satisfied.

Additionally or alternatively to user-specific histories, the contenthost subsystem 110 may be configured to generate media-specifichistories from tracked media consumption events. From tracked mediaaccess requests, for example, the content host subsystem 110 maygenerate and maintain media-specific histories descriptive of accessevents for specific media content instances. For instance, the trackingmodule 540 may record each request received to access a particular mediacontent instance. The tracked requests may be compiled into a historythat is specific to the media content instance. The history may bestored as part of the media content attribute data associated with themedia content instance.

From media-specific histories of media consumption events, thepopularity of media content may be determined. For example, the contenthost subsystem 110 may quantify a popularity score such as the number oftimes that a media content instance has been accessed within a certaintime period (i.e., a current and actual access rate). The popularityscore may be determined dynamically in real time, periodically, or whena predetermined event is detected to have occurred (e.g., an accessrequest for the media content instance is received).

FIG. 6 is a graphical illustration of quantified popularity over thelifespan of a particular media content instance. Dashed line 610 isrepresentative of a popularity curve for the media content instance.Each point on the popularity curve may be representative of a popularityscore at a given time during the lifespan of the media content instance.The lifespan may be the time during which the media content instance ispublished and available for access by consumers 135.

The popularity curve may in some cases form a bell or similar curverepresentative of a viral distribution of media content. As moreconsumers 135 become aware of a media content instance, the rate atwhich consumers 135 access the media content instance generallyincreases until a peak popularity point is reached. At this point, theaccess rate may begin to decline because many consumers 135 have alreadyexperienced the media content instance.

As described below, the content host subsystem 110 may be configured totake into account the popularity score of a media content instance whenidentifying advertising content to be matched with the media contentinstance. This enables the content host subsystem 110 to provide toolsthat allow advertisers to control the matching of advertising contentbased on the popularity of media content. Some advertisers 130 may bewilling to pay a premium (e.g., a higher placement bid) to haveadvertising content matching with media content at or near the peak ofits popularity.

From tracked media consumption events, the content host module 110 maydetermine actual demographic data of consumers 135 accessing mediacontent. For example, for an access request, the tracking module 540 maybe configured to identify from user profile data the demographic data ofthe consumer 135 requesting access to media content. Such data can becompiled to determine media consumption trends for media content,including the demographics of users expressing an interest in the mediacontent. The compiled data may be stored in data store 520 as part ofthe media content attribute data for a media content instance. Theactual user demographic data associated with media content can beconsidered when identifying advertising content to be matched with themedia content instance.

In certain embodiments, the user demographics of actual consumers ofmedia content may be used to qualify media content attribute data (e.g.,intended audience) provided by a content producer 125. In some cases,for example, the actual consumer demographic information can be givenmore weight than the user-provided target audience data. This canimprove the accuracy of the system 100 by self-correcting user-provideddata that turns out not to be accurate. For example, a content producer125 may believe that a particular one of his media content instances istargeted to a first demographic of consumers 135, but actual requestsfor the media content instance may indicate that a second demographic ofconsumers 135 is more interested in the media content instance. With thedemographic data for the actual consumers 135 of the media contentinstance, the content host subsystem 110 may account for actualdistribution patterns and associated demographic data when matchingadvertising content to the media content instance.

As the number of requests for a media content instance increases, theaccuracy of tracked demographic data for the media content instancegenerally increases. FIG. 6 illustrates a demographic accuracy curve 620along the lifespan of a media content instance. The content hostsubsystem 110 may include a predefined demographic accuracy threshold630 that when reached by the demographic accuracy curve 620, will causethe content host subsystem 110 to increase the weight given to thetracked user demographic data associated with consumers 135 of a mediacontent instance. In other words, once a sufficient number of consumers135 have accessed the media content instance, the content host subsystem110 may deem the tracked user demographic data to be accurate enough tobe given additional weight or otherwise qualify user-provided targetaudience data when identifying advertising content to be matched to themedia content instance.

Tracked media consumption events may also be used to generatehistory-based demographic data that is specific to consumers 135. Forexample, when a media content instance is accessed, demographic data ofthe consumer 135 accessing the media content instance may be recordedand included in the media content attribute data associated with themedia content instance, as described above. In some cases, thisdemographic data may be used to estimate user demographic data for otherconsumers 135 who access the same media content instance. For example, aconsumer 135 may access a media content instance. From the access logfor the media content instance, demographic data of consumers 135 whohave accessed the media content instance in the past may be used topredict the demographic data of the consumer 135 who is requestingaccess to the media content instance. For instance, a majority ofconsumers 135 who have accessed the media content instance in the pastmay have demographic data indicating that the consumers 135 are male andbetween the ages of eighteen and thirty-two. This demographic data maybe extrapolated to the consumer 135 who is currently requesting accessto the media content instance. This extrapolated demographic informationmay be added to and included in the user profile data for the consumer135. This extrapolated demographic information may be especially helpfulwhen the user profile data for the consumer 135 is sparse.

User demographic data that is based on actual media consumption eventsmay improve the accuracy of the system 100, especially in cases wherethe actual interests and media consumption habits of a consumer 135 areoutside the norm of his or her user-provided demographic information.History-based user demographic data may be especially useful when aconsumer 135 has provided little or no demographic information. In thissituation, the content host subsystem 110 may use the actual mediaaccess patterns of the consumer 135 and data associated with theaccessed media content to estimate specific consumer demographic data.

The content host subsystem 110 may be configured to place limitations onthe estimation of user demographic data. In certain embodiments, forexample, history-based demographic information may be attributed to aconsumer 135 only when the demographic data being relied upon is deemedto be accurate. For example, the content host subsystem 110 may beconfigured to utilize the tracked user demographic data associated witha media content instance to estimate user demographic data for aconsumer 135 only when the demographic accuracy curve 620 has reached apredefined demographic accuracy threshold such as threshold 630 of FIG.6.

As described further below, any of the tracked data or data derived fromthe tracked data may be utilized by the content host subsystem 110 whenmatching advertising content to media content. This enables the contenthost subsystem 110 to base selections of advertising content on actualevents, preferences, histories, and trends that have been tracked by thetracking module 540. The tracked data may be integrated into any of theuser profile data, media content attribute data, and content matchingdata for use when matching advertising content to media content.

5. Matching Module

Returning to FIG. 5, the content host subsystem 110 may include amatching module 550, which may include any devices and technologies forselectively matching advertising content to media content. The matchingmay be based on media content attribute data, user profile data, andcontent matching data stored in data store 520. The media contentattribute data, user profile data, and content matching data may includeany of the types of information described above, including data providedby consumers 135, data provided by advertisers 130, data provided bycontent producers 125, and data tracked and/or generated by the contenthost subsystem 110.

The matching may be performed dynamically. In other words, the matchingmay be performed in real time and be based on a current snapshot ofmedia content attribute data, user profile data, and content matchingdata stored in data store 520. In certain embodiments, the matching maybe based on a comparison of a current snapshot of user profile data, acurrent snapshot of media content attribute data, and a current snapshotof content matching data. Data included in the three snapshots may becompared to determine a current match value of each potential match.That is, a match value may be determined for each advertising contentinstance for which the content matching data is satisfied by the mediacontent attribute data and the user profile data. The match values maybe based on the bid data included in the content matching data, and incertain embodiments, the matching module 550 may be configured to selectone or more of the potentially matching advertising content instanceshaving relatively higher bid data. Such an approach is intended to helpspur competition among advertisers and may help to drive up advertisingfees and revenues, which benefits content producers 125 and the partydistributing the media content.

In certain embodiments, the matching module 550 may be configured tomatch advertising content each time that a request to access mediacontent is received. For example, the access module 510 may receive arequest from an access device 120. The request may be to download aparticular media content instance, or the request may inform the contenthost device 110 that the access device 120 has been requested to presentlocally stored media content. The request and the information associatedtherewith (e.g., a media content identifier for the media content beingaccessed and a user profile identifier for the consumer 135 accessingthe media content) may be provided to the matching module 550, which canuse the request and associated information to access corresponding datain the data store 520 and identify and match advertising content to themedia content being accessed.

Because of the dynamic nature of the matching operation, each selectedadvertising content instance can be custom-picked based on up-to-datedata. Each time media is accessed, the matching of advertising contentmay be based on a different snapshot of data. Accordingly, differentconsumers 135 may experience different advertisements when viewing thesame media content, and different advertisements may be provided withdifferent viewings of the same media content. This is at least becauseuser profile data, media content attribute data, and content matchingdata may be updated in real time as the tracking module 540 recordsmedia consumption events and users update user-provided data.

In certain cases, for example, a first advertisement may be presented toa consumer 135 accessing a media content instance a first time, and asecond advertisement may be presented to the consumer 135 subsequentlyaccessing the same media content instance a second time. Accordingly, aconsumer 135 who has downloaded or recorded a particular media contentinstance can be presented with different advertisements each time themedia content instance is accessed and experienced locally. As the mediacontent instance is being accessed (e.g., played) locally by an accessdevice 120, the access device 120 can recognize a pre-designatedplaceholder for advertising content and send a request to the contenthost subsystem 110 for one or more advertising content instances to beinserted at the placeholder. The requests may be sent and fulfilled inreal time. Alternatively, advertising content may be selected andprovided in advance of the consumer 135 accessing the media content suchas periodically during off-peak access times (e.g., late at night).

The matching module 550 may be configured to give weight and/or priorityto the different data used to match advertising content to mediacontent. In some cases, for example, the matching module 550 may givemore weight to user profile data (e.g., user demographic and/or mediaviewing history data) than to media content attribute data (e.g., thegenre and/or the popularity level of media content). This configurationmay be preferred by advertisers 130 who are more concerned aboutreaching a particular demographic than about the types of media contentto which advertising content will be matched. Conversely, otheradvertisers 130 trying to reach a broad demographic of consumers 135 maybe more concerned about the type of media content to which advertisingcontent will be matched.

In certain embodiments, the content host subsystem 110 may provideadvertisers 130 with at least a share of control over how the contenthost subsystem 100 will weight or prioritize different content matchingcriteria. For example, an advertiser 130 may provide content matchingdata indicating that a corresponding advertising content instance shouldbe matched to consumers 135 over the age of fifty who have viewed acurrently available television show called “WHEEL OF FORTUNE” within thelast week. The advertiser 130 may also be provided with tools allowingthe advertiser to weigh and/or prioritize the two criteria. For example,the advertiser 130 may indicate that the age requirement should beprioritized over the “WHEEL OF FORTUNE” viewing requirement. Thiscontrol over weight and priority to be given to content matchingcriteria helps increase the ability of the advertiser 130 tomicro-target his advertising content.

To facilitate an understanding of the capabilities of the content hostsubsystem 110 for matching advertising content to media content in ahighly targeted manner, a particular matching example will now bedescribed. An advertiser 130 may upload an advertising content instanceto the content host subsystem 110 via an access device 120. Theadvertising content instance may include subject matter designed topromote high-end golf equipment. The advertiser 130 may provide contentmatching data to be considered when matching the advertising contentinstance. The content matching data may indicate that the advertiser 130wishes the advertising content instance be matched to consumers 135 whohave accessed media content showing one or more recent professional golftournaments such as the last “Ryder Cup” and/or “PGA Championship”. Thecontent matching data may also indicate that the advertiser 130 wishesthe advertising content instance be matched to male consumers 135 whoare over the age of eighteen (18).

The advertiser may also provide content matching data specifyingcriteria for media content to which the advertising content instance maybe matched. For example, the content matching data may indicate that theadvertiser 130 wishes the advertising content instance to be matched tomedia content instances having a “sports” genre, or the advertiser 130may be more specific and specify that the advertising content instanceshould be matched to media content related to golf. The advertiser 130may also specify that the advertising content is not to be matched toquestionable media content such as media content having an “adult”rating. The advertiser 130 may also provide bid data such as a maximumfee that the advertiser 130 is willing to pay for each placement of theadvertising content instance.

When the content host subsystem 110 receives an access request from anaccess device 120 associated with a consumer 135, the content hostsubsystem 110 may dynamically find advertising content to match with therequested media content instance. The advertising content instancerelating to golf may be considered as a potential match. For example,the matching module 550 may compare the content matching data associatedwith the advertising content instance to the user profile dataassociated with the consumer 135 and the media content attribute dataassociated with the requested media content to determine whether theadvertising content instance satisfies the matching criteria, or whetherthe advertising content instance fits the matching criteria better thanother available advertising content. Specifically, the matching module550 may determine whether the user profile data associated with theconsumer 135 requesting the media content instance indicates that theconsumer 135 accessed the last “Ryder Cup” and/or the “PGAChampionship”, and is a male at least eighteen (18) years of age. Thematching module 550 may also determine whether the media contentattribute data associated with the media content instance beingrequested indicates that the media content instance is of a “sports”genre or related to golf and does not have an “adult” rating.

If the user profile data and the media content attribute data matchthese content matching criteria, the advertising content instance may beconsidered a potential match to the media content instance. The matchingmodule 550 may then determine a match value for matching the advertisingcontent instance to the media content instance. In certain embodiments,the match value is equal to or otherwise based on the maximum bid amountprovided by the advertiser 130 for the advertising content instance. Inother embodiments, the bid data may be combined with the degree to whichthe content matching criteria are satisfied by the user profile data andthe media content attribute data. The match module 550 may be configuredto select the advertising content instance having the highest matchvalue and provide it to the access device 120 for presentation with themedia content instance being accessed. Of course, more than oneadvertising content instance may be selected and provided.

The advertiser 130 may wish to provide a criterion relating to thepopularity of the media content to which the advertising contentinstance should be matched. Accordingly, the content matching data mayalso include one or more criteria related to the popularity of mediacontent. In the golf advertising content example described above, theadvertiser 130 may specify a media content popularity threshold thatshould be reached before the advertising content instance will bematched to media content. For example, the advertiser 130 may specifythat the advertising content instance should be matched only to mediacontent having a current popularity score that at least meets thethreshold. The threshold may be based on an actual access rate, such asnumber of times that the media content has been accessed within a minuteor an hour, for example. The popularity threshold may be especiallyuseful for advertisers wishing to have their advertising content reach alarge audience and/or be associated with trendy media content.

The popularity of media content may drive up the match values foradvertising content to be matched to the media content. Referring againto FIG. 6, the popularity curve 610 is essentially a bell curve having apeak of popularity for a media content instance. The popularity of themedia content increases as more consumers 135 access the media content.As the popularity increases, an increased number of advertising contentinstances may be considered for each match at least because popularitythreshold criteria have been satisfied for a greater number ofadvertising content instances. The increase in potentially matchingadvertising content instances also brings an increased number of maximumbid amounts to be considered, the more maximum bid amounts may generallyincrease the match values, especially because advertisers 130 may bewilling to pay more to have advertising content matched to popular mediacontent. Thus, as shown in FIG. 6, higher bidder advertisements may bematched at or near the peak of the bell curve, and lower bidderadvertisements may be matched at off-peak segments of the media contentlifespan.

Accordingly, advertisers 130 can use popularity criteria to ensure thatadvertising content is matched as a desired popularity level along amedia content lifespan and to control advertising fees based on thepopularity of the media content. The popularity of the media content canbe leveraged to increase advertising fees and thereby maximize the valueof the media content.

Once advertising content has been matched, it may be provided to theaccess device 120 associated with the access request by way of theaccess module 510, as described above. The advertising content may bestitched in front of, behind, or at other placeholder within a mediacontent instance for presentation along with the media content.

6. Transcoder Module

Returning to FIG. 5, the content host subsystem 110 may include atranscoder module 560, which may include any devices and technologiesfor decoding and/or encoding digitally-represented content from/tovarious data formats. With the transcoder module 560, the content hostsubsystem 110 is able to receive and provide content in a variety offormats and over different networks using different communicationsprotocols and technologies. For example, a media content instance may bereceived in a first media format that can be processed (e.g., decoded)by only a subset of access devices 120 (set-top boxes) connected to thenetwork 115. The transcoder module 560 may convert the media contentinstance to a second media format that can be processed by other accessdevices 120 (e.g., wireless phones) connected to the network 115.Accordingly, the transcoder module 560 can help extend the distributionof content to multiple different platforms.

7. Revenue Module

The content host subsystem 110 may include a revenue module 570configured to determine and distribute advertising revenue generated bythe system 100. The revenue module 570 may utilize advertisingdistribution statistics tracked by the tracking module 540, as describedabove. The revenue module 570 may use the recorded data to determine thefees to be charged to advertisers 130 for distribution of advertisingcontent. In some embodiments, the advertisers 130 pay a fee for eachtime corresponding advertisements are matched and provided consumers135.

The revenue module 570 may divide revenue from the advertising feesbetween the appropriate content producers 125 and the party or partiesdistributing the media content, including the operator of the contenthost subsystem 110, as well as affiliates 140 in some cases. For aparticular media content instance, for example, the revenue module 570may determine the fees charged to advertisers 130 for matching ofadvertising content to the media content instance. The revenue from thefees associated with the media content instance may then be dividedbetween the content producer 125, the operator of the content hostsubsystem 110, and perhaps an affiliate 140. The division may be inaccordance with a predefined revenue sharing ratio, which may be set bythe operator of the content host subsystem 110, or negotiated with thecontent producer 125 and/or affiliate 140.

III. Exemplary Process Views

FIG. 7 illustrates an exemplary method of hosting and matchingadvertising content to media content. While FIG. 7 illustrates exemplarysteps according to one embodiment, other embodiments may omit, add to,reorder, and/or modify any of the steps shown in FIG. 7.

In step 710, media content is received from content producers 125. Step710 may be performed in any of the ways described above, including thecontent host subsystem 110 receiving media content transmitted overnetwork 115 from one or more access devices 120 associated with thecontent producers 125.

In step 715, media content attribute data is received from the contentproducers 125. Step 715 may be performed in any of the ways describedabove, including the content host subsystem 110 receiving media contentattribute data transmitted over network 115 from one or more accessdevices 120 associated with the content producers 125.

In step 720, advertising content is received from advertisers 130. Step720 may be performed in any of the ways described above, including thecontent host subsystem 110 receiving advertising content transmittedover network 115 from one or more access devices 120 associated with theadvertisers 130.

In step 725, content matching data is received from the advertisers 130.Step 725 may be performed in any of the ways described above, includingthe content host subsystem 110 receiving content matching datatransmitted over network 115 from one or more access devices 120associated with the advertisers 130.

In step 730, user profile data is received from consumers 135. Step 730may be performed in any of the ways described above, including thecontent host subsystem 110 receiving user profile data transmitted overnetwork 115 from one or more access devices 120 associated with theconsumers 135.

In step 735, media consumption events are tracked. Step 735 may beperformed in any of the ways described above, including the trackingmodule 540 of the content host subsystem 110 tracking media consumptionevents such as media access requests received from access devices 120associated with consumers 135.

In step 740, tracked data is included in user profile data, mediacontent attribute data, and content matching data. Step 740 may beperformed in any of the ways described above, including the trackingmodule 540 of the content host subsystem 110 providing tracked data ordata derived therefrom to the data management module 515 for storage inthe data store 520. Accordingly, user profile data, media contentattribute data, and content matching data stored in the data store 520may include user-provided information and tracked information and may beupdated dynamically and in real time such that current snapshots of thedata can be used when matching advertising content to media content.

Steps 710-740 may be performed interchangeably with one another and atdifferent times. Accordingly, data in data store 520 may be continuallyupdated such that current snapshots of the data can be used to selectappropriate advertising content to be matched to media content.

In step 745, a request to access a media content instance included inthe media content may be received. Step 745 may be performed in any ofthe ways described above, including the content host subsystem 110receiving the access request from an access device 120 associated with aconsumer 135.

In step 750, at least one advertising content instance included in theadvertising content is matched to the media content instance based onuser profile data, media content attribute data, and content matchingdata. Step 750 may be performed in any of the ways described above andmay be based on any information or combination(s) of informationincluded in the user profile data, media content attribute data, andcontent matching data. Step 750 may be performed dynamically and may bebased on a real time snapshot of the data included in the data store 520of the content host subsystem 110.

IV. Alternative Embodiments

The preceding description has been presented only to illustrate anddescribe exemplary embodiments with reference to the accompanyingdrawings. It will, however, be evident that various modifications andchanges may be made thereto, and additional embodiments may beimplemented, without departing from the scope of the invention as setforth in the claims that follow. For example, certain features of oneembodiment described herein may be combined with or substituted forfeatures of another embodiment described herein. The above descriptionand accompanying drawings are accordingly to be regarded in anillustrative rather than a restrictive sense.

1. A system comprising: a data store including at least a subset ofmedia content, media content attribute data associated with the mediacontent, user profile data associated with at least one consumer havingaccess to the media content, advertising content, and content matchingdata associated with the advertising content; an access modulecommunicatively coupled to an access device, said access moduleconfigured to receive a request sent by the access device, the requestbeing for access to a media content instance included in the mediacontent; and a matching module configured to match at least oneadvertising content instance included in the advertising content to themedia content instance based on the media content attribute data, userprofile data, and content matching data; wherein said access module isfurther configured to provide the matched at least one advertisingcontent instance to the access device for user presentation. 2.-27.(canceled)